Many computer networks, the most noteworthy of which is the Internet, are implemented as geographically-distributed, multi-tiered, and multi-technology associations of computing devices. To enable communication between two devices, traffic may pass through numerous intermediate devices according to many different protocols. For example, in the case of the Internet, local traffic may be exchanged according to the Ethernet protocol while traffic crossing the backbone of the network may be passed according to the multi-protocol label switching (MPLS) protocol. As such, various mechanisms have been developed to manage such multi-technology handovers and thereby ensure end-to-end connectivity.
While handover mechanisms may be sufficient to enable communication in ideal network conditions, conditions in practice are rarely ideal, Intermediate routing devices and the links connecting these devices may become overloaded or inoperable for various reasons and may render a particular communication path broken. Many networks, however, provide a robust mesh of connections, affording multiple communication paths between any two devices. Thus, if one communication path is severed, communication may be switched to a different path, thereby preserving the connection between the two devices. To provide such functionality, various redundancy mechanisms have also been developed.